Course code 07 53 1602 70
ECTS credits 5
Course title in the language of instruction
Nowoczesne metody programowania
Course title in Polish Nowoczesne metody programowania
Course title in English
 Modern Programming Techniques
Language of instruction Polish
Course level first-cycle programme
Course coordinator dr inż. Andrzej Brozi
Course instructors dr inż. Łukasz Piskorski
Delivery methods and course duration
Lecture Tutorials Laboratory Project Seminar Other Total of teaching hours during semester
Contact hours 20 30 15 0 65
E-learning No No No No No No
Assessment criteria (weightage) 0.00 0.70 0.30 0.00
Course objective
  1. To improve programming skills of students.
  2. To make students familiar with capabilities of specialized programming packages - Python, R.
  3. To make students familiar with capabilities of computer symbolic computation - Maxima.
Learning outcomes
  1. Student know basic rule of program development (FFT1A_W09)
  2. Student knows basic tools and methods applied to solution of simple engineering problems with the use of computer simulation. (FFT1A_W18)
  3. Student can use, at basic level, programs Maxima and R and, at intermediate level, Python. (FFT1A_U03 and FFT1A_U06)
  4. Having a given problem student can prioritize its elements. (FFT1A_K06)
Assessment methods
Verification of effects is realized by assessment of the program created by a student according to the following criteria:
mark 3 - program realizes its basic aim,
mark 4 - program is correctly written,
mark 5 - program is written elegantly and efficiently.

 
Prerequisites
Basic programming skills.
Course content with delivery methods
Python:
1. Types of variables in Python.
2. Defining own functions, args and kwargs, local and global variables, generators.
3. Advanced numerical procedures, numpy and scipy modules.
4. Graphical presentation of results, 2D and 3D plots.
5. Regular expressions.
Maxima:
1. Fundamentals of using Maxima.
2. Simplifying and expanding algebraic and trigonometric expressions, defining functions.
3. Solvinf algebraic equations and their systems.
4. Solving ordinary differential equations (symbolic and numeric).
5. Using additional packages - interpolation, approximation.
R:
1. Types of objects in R.
2. Vector operations.
3. File operations.
4. Plotting.
5. Numerical computations.
6. Simulations.
Basic reference materials
  1. Pliki pdf udostępniane przez prowadzącego.
  2. Edwin L. Woolett, "Maxima by example", http://web.csulb.edu/~woollett/
  3. Michael Dawson, "Python dla każdego. Podstawy programowania", Helion, 2014, ISBN 978-83-246-9358-0
  4. Marek Gągolewski, "Programowanie w języku R Analiza Danych. Obliczenia. Symulacje", Wydawnictwo Naukowe PWN, 2016, ISBN 978-83-01-18939-6
Other reference materials
  1. Mark Summerfield, "Programming in Python 3", Addison-Wesley, 2010, ISBN 978-0-321-68056-3.
  2. Dusty Phillips, "Python 3 Object Oriented Programming", Packt Publishing Ltd., 2010, ISBN 978-1-849511-26-1.
  3. Cyprian T. Lachowicz, "Matlab, Scilab, Maxima. Opis i przykłady zastosowań", wyd. Politechniki Opolskiej, 2005, ISBN 83-88492-80-2.
  4. Garrett Grolemund, "Hands-On Programming with R", O'Reilly, 2014, ISBN 978-1-449-35901-0.
  5. Norman Matloff, "The Art of R Programming, A Tour of Statistical Software Design", No Starch Press, Inc., 2011, ISBN 978-1-59327-384-2
  6. Emmanuel Paradis, "R for Beginners", Universidad de Montpellier, 2005
  7. W. N. Venables, D. M. Smith and the R Core Team, "An Introduction to R: A Programming Environment for Data Analysis and Graphics", Network Theory Ltd., 2017, ISBN 978-0954161743
Average student workload outside classroom
66
Comments
Last update 2021-05-14 14:52:51